package com.wanxi.udp.demo2单播持续发送数据;

import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;

/**
 * 接收端接收数据，遇到886表示数据接收完毕
 */
public class UDPReceive886 {
    public static void main(String[] args) throws IOException {
        System.out.println("接收端启动...");
        //1 创建接收端socket-找码头
        DatagramSocket socket = new DatagramSocket(20000);
        //2 循环接收数据
        while (true) {
            //3 创建接收的数据包-找箱子
            byte[] bytes = new byte[1024];
            // 参数说明接收消息的字节数组，接收消息的长度，地址，端口
            DatagramPacket datagramPacket = new DatagramPacket(bytes, bytes.length, InetAddress.getByName("127.0.0.1"), 2000);
            //4 接收数据-码头接收礼物并放入新箱子中
            socket.receive(datagramPacket);
            //5 输出接收的数据-村长从箱子里获取礼物
            String message = new String(bytes, 0, datagramPacket.getLength());

            System.out.println("接收消息：" + message);
            if (message.equals("886")) {
                break;
            }
        }

    }

}
